Session-typed concurrent contracts

نویسندگان

چکیده

Abstract In sequential languages, dynamic contracts are usually expressed as boolean functions without externally observable effects, written within the language. We propose an analogous notion of concurrent for languages with session-typed message-passing concurrency. Concurrent partial identity processes that monitor bidirectional communication along channels and raise alarm if a contract is violated. in usual way must also satisfy transparency requirement, which guarantees terminating compliant programs observationally equivalent. illustrate several examples. show how to generate from refinement session-type system resulting monitors redundant can statically be seen well-typed.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Typed Contracts for Functional Programming

A robust software component fulfills a contract: it expects data satisfying a certain property and promises to return data satisfying another property. The object-oriented community uses the design-by-contract approach extensively. Proposals for language extensions that add contracts to higher-order functional programming have appeared recently. In this paper we propose an embedded domain-speci...

متن کامل

Typed Concurrent Objects

Based on a name-passing calculus and on its typing system the paper shows how to build several language constructors towards a strongly-typed objectoriented concurrent programming language. The basic calculus incorporates the notions of asynchronous labelled messages, concurrent objects composed of labelled methods, and a form of abstraction on processes allowing in particular to declare polymo...

متن کامل

Corecursion in Session-Typed Processes

Session types are widely accepted as a useful expressive discipline for structuring communications in concurrent and distributed systems. In order to express infinitely unbounded sessions, as required to model the behaviour of realistic distributed systems, session typed languages often introduce general recursion operators at both the program and the type level. Unfortunately, general recursio...

متن کامل

Functions as Session-Typed Processes

We study type-directed encodings of the simply-typed λ-calculus in a session-typed π-calculus. The translations proceed in two steps: standard embeddings of simply-typed λ-calculus in a linear λ-calculus, followed by a standard translation of linear natural deduction to linear sequent calculus. We have shown in prior work how to give a Curry-Howard interpretation of the proofs in the linear seq...

متن کامل

Session Typed Parameterised Communication Patterns

Abstract. Communication patterns describe simple and elegant structured interactions in communication based applications. They are used in many parallel computing architectures of parallel algorithms, data exchange protocols and web-services. Communication patterns help programmers to design more efficient, structured, modular and understandable architectures, but they do not provide any automa...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Journal of logical and algebraic methods in programming

سال: 2022

ISSN: ['2352-2208', '2352-2216']

DOI: https://doi.org/10.1016/j.jlamp.2021.100731